Nuprl Lemma : ecl-m3_wf 11,40

ds:fpf(Id; x.Type), da:fpf(Knd; k.Type), x:Id, T:Type, ks:(Knd List),
a:((k:{k:Knd| (k  ks)} decl-state(ds)ma-valtype(dak)T)), snd:msg-spec(dsda),
l:IdLnk.
((fpf-dom(id-deq; xds)))
 (ecl-m3(asndxl)
 ( k:{k:Knd| (k  ks)} (tg:{tg:Id| (tg  ecl-tags(lsnd))} 
 (  (decl-state(fpf-join(id-deq; ds; fpf-single(xT)))ma-valtype(dak)
 (  (fpf-cap(da; Kind-deq; rcv(l,tg); void) List))) List) 
latex


Definitionst  T, x:AB(x), P  Q, False, A, A  B, , isect(Ax.B(x)), top, id-deq, fpf-single(xv), b, b, , prop{i:l}, Type, x.A(x), xt(x), fpf(Aa.B(a)), fpf-dom(eqxf), P  Q, P  Q, Unit, left + right, fpf-join(eqfg), f(a), atom{$n:n}, msg-spec(dsda), x:AB(x), case b of inl(x) => s(x) | inr(y) => t(y), if b then t else f fi , spreadn(ax,y,z.t(x;y;z)), map(fas), let x = a in b(x), ecl-m3(asndxl), [], <ab>, idlnk-deq, Kind-deq, IdLnk, Knd, product-deq(ABab), fpf-cap(feqxz), void, rcv(l,tg), type List, ma-valtype(dak), x:AB(x), decl-state(ds), , x:A  B(x), Id, ecl-tags(lsnd), (x  l), {x:AB(x)} , s = t, ||as||, fpf-ap(feqx), A c B, a < b, EqDecider(T), sqequal(st), guard(T), sq_type(T), l_all(LTx.P(x)), t.2, t.1, msg-item(dsdakl), P  Q, subtype(ST)
Lemmassubtype rel list, l member subtype, member-ecl-tags, list-set-type2, pi2 wf, pi1 wf, msg-item wf, product-deq wf, idlnk-deq wf, deq wf, IdLnk wf, msg-spec wf, fpf wf, let wf, map wf, nat wf, ecl-tags wf, ifthenelse wf, l member wf, ma-valtype wf, Knd wf, Kind-deq wf, rcv wf, nat properties, decl-state wf, subtype rel dep function, fpf-join wf, fpf-cap wf, fpf-cap-join-subtype, fpf-join-cap-sq, fpf-single wf, top wf, eqtt to assert, iff transitivity, eqff to assert, assert of bnot, fpf-dom wf, fpf-trivial-subtype-top, bool wf, bnot wf, not wf, assert wf, fpf-cap-single1, Id wf, id-deq wf, subtype rel self

origin